package com.javabasic.algorithm.leetcode;

/**
 * @Author xiongmin
 * @Description
 * @Date 2021-04-08 17:41
 * @Version 1.0
 **/
public class FindMinimumInRotatedSortedArray {


    /**
     * 更具旋转的特点，当旋转以后 出现前面一个数大于后面一个数时，那么后面的数就是最小值
     * @param nums
     * @return
     */
    public int findMin(int[] nums) {
        int len = nums.length;
        if (len == 1) {
            return nums[len-1];
        }
        int tag = 1;
        // 前提时nums数组中的元素时独一无二的
        while (nums[tag%len] > nums[(tag-1)%len]) {
            tag++;
        }
        return nums[tag%len];
    }
}
